What is a bsp?

BSP stands for Binary Space Partitioning. It is a data structure used for efficient rendering and collision detection in 3D graphics. BSP trees are mainly used for real-time rendering like video games, virtual reality, etc. The basic concept of BSP is to divide a 3D space into two halves using a plane. A BSP tree is created recursively by subdividing the space into smaller and smaller volumes until each leaf node contains only a single polygon. This allows for quick and efficient culling of non-visible objects during rendering, resulting in a significant boost in the overall performance of the graphics engine. BSP trees are also useful for collision detection because they provide a quick way to determine if two objects occupy the same volume or not.